import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

// 假定我们有一个可以返回 Promise 的
// 通用 API（请忽略此 API 具体实现细节）
// import { fetchItem } from './api'

export default function createStore() {
  return new Vuex.Store({
    state: {
      name: 'init name'
    },
    mutations: {
      SET_NAME(state, { name }) {
        state.name = name || ''
      }
    },
    actions: {
      fetchName({ commit }, name) {
        commit('SET_NAME', { name })
      }
    }

  })
}
